#ifndef TEST_CLI_CLI_H_
#define TEST_CLI_CLI_H_

#include "base/base.h"

#include "rpc/socket.h"

namespace ufs {
class Buffer;
}

namespace test {
class TestCli {
  public:
    TestCli() {
      socket_.reset(new ufs::Socket);
    }

    bool Connect(std::string& server, uint16 port);

    bool SendTestMsg();

  private:
    scoped_ptr<ufs::Socket> socket_;

    bool SendBuffer(ufs::Buffer* buf);

    bool SendInt32();
    bool SendCharArray();
    bool SendString();

    bool SendMultiple();

    bool SendAndRecv();

    DISALLOW_COPY_AND_ASSIGN(TestCli);

};

}

#endif
